function foo() {
	console.log(this.a);
}

var obj = {
	a: 11111,
	foo: foo
}

var a = 'global';

var bar = obj.foo;

obj.foo(); // 11111
bar(); // global

/**
 * 代码中obj中的foo赋值的是foo的引用。
 * bar=obj.foo 这里赋值的也是引用。
 * 接受引用之后，就相当于把这个函数写在这里。
 * 那么obj.foo()被obj调用，那么this就指向obj
 * bar() 调用相当于直接在这里写函数然后调用，相当于window对象在调用，所以this指向window
 */